PHP8 簡介

2023-08-14 13:56 更新

PHP 中的每個表達式都屬于以下某個內(nèi)置類型,具體取決于值:

  • null
  • bool
  • int
  • float (浮點數(shù))
  • string
  • array
  • object
  • callable
  • resource

PHP 是動態(tài)類型語言,這意味著默認不需要指定變量的類型,因為會在運行時確定。然而,可以通過使用類型聲明對語言的一些方面進行類型靜態(tài)化。

類型限制了可以對其執(zhí)行的操作。然而,如果使用的表達式/變量不支持該操作,PHP 將嘗試將該值類型轉(zhuǎn)換為操作支持的類型。此過程取決于使用該值的上下文。更多信息參閱類型轉(zhuǎn)換。

小技巧:類型比較表也很有用,因為存在不同類型之間的值的各種比較示例。
注意:使用類型轉(zhuǎn)換,強制將表達式的值轉(zhuǎn)換為某種類型。還可以使用 settype() 函數(shù)就地對變量進行類型轉(zhuǎn)換。

使用 var_dump() 函數(shù)檢查表達式的值和類型。使用 get_debug_type() 檢索表達式的值和類型。使用 is_type 檢查表達式是否屬于某種類型。

$a_bool = true; // a bool
$a_str = "foo"; // a string
$a_str2 = 'foo'; // a string
$an_int = 12; // an int
echo get_debug_type($a_bool), "\n";
echo get_debug_type($a_str), "\n";

// 如果是整型,就加上 4
if (is_int($an_int)) {
$an_int += 4;
}
var_dump($an_int);

// 如果 $a_bool 是字符串,就打印出來
if (is_string($a_bool)) {
echo "String: $a_bool";
}
?>

以上示例在 PHP 8 中的輸出:

bool
string
int(16)
注意:PHP 8.0.0 之前,get_debug_type() 無效,可以使用 gettype() 函數(shù)代替。但是沒有使用規(guī)范的類型名稱。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號